package com.gopay.common.domain.bank.yeepay.expay;

import java.io.Serializable;
import java.util.List;

import com.gopay.common.domain.bank.ExPayBaseMessage;
import com.gopay.common.domain.bis.BisBankBindCardInfo;

public class YeePayExPayMessage extends ExPayBaseMessage implements Serializable {

    /**
	 * 
	 */
    private static final long serialVersionUID = 1L;

    // 商户账户编号
    private String merchantaccount;
    // 以"分"为单位的整型
    private int amt;
    // 交易时间 时间戳，例如：1361324896，精确到秒
    private int transtime;
    // 交易币种
    private int currency;
    // 商品类别码
    private String productcatalog;
    // 商品名称 格式传递值：应用-商品名称
    private String productname;
    // 用户标识 最长50位，商户生成的用户唯一标识
    private String identiid;
    // 用户标识类型
    private int identitype;
    // 终端标识类型
    private int terminaltype;
    // 终端标识
    private String terminalid;
    // 绑卡ID
    private String bindid;

    /**
     * 返回字段
     */
    // 0：建议不需要进行短信校验 1：建议需要进行短信校验
    private String smsconfirm;
    // 签名
    private String sign;
    // 错误码
    private String errorcode;
    // 错误信息
    private String errormsg;
    // 短信发生时间 精确到秒的时间戳
    private String sendtime;
    // 易宝交易流水号
    private String yborderid;
    // 银行卡类型 1：储蓄卡 2：信用卡
    private String bankcardtype;
    // 银行卡名称
    private String bankname;
    // 卡号后4位
    private String cardlast;
    // 对含有签名的基本业务数据JSON串加密后形成的密文
    private String data;
    // 使用 RSA 加密AESKey后生成的密钥密文
    private String encryptkey;
    // 绑卡有效期
    private String bindvalidthru;
    // 状态 0：失败 1：成功
    private String status;
    // 验签结果
    private boolean flag;
    // 手机号
    private String phone;
    // 绑卡关系列表
    private List<BisBankBindCardInfo> listInfo;
    // 是否需要cvv2 1,需要 2,不需要
    private String isQueryCVN;

    public String getMerchantaccount() {
        return merchantaccount;
    }

    public void setMerchantaccount(String merchantaccount) {
        this.merchantaccount = merchantaccount;
    }

    public int getAmt() {
        return amt;
    }

    public void setAmt(int amt) {
        this.amt = amt;
    }

    public int getTranstime() {
        return transtime;
    }

    public void setTranstime(int transtime) {
        this.transtime = transtime;
    }

    public int getCurrency() {
        return currency;
    }

    public void setCurrency(int currency) {
        this.currency = currency;
    }

    public String getProductcatalog() {
        return productcatalog;
    }

    public void setProductcatalog(String productcatalog) {
        this.productcatalog = productcatalog;
    }

    public String getProductname() {
        return productname;
    }

    public void setProductname(String productname) {
        this.productname = productname;
    }

    public String getIdentiid() {
        return identiid;
    }

    public void setIdentiid(String identiid) {
        this.identiid = identiid;
    }

    public int getIdentitype() {
        return identitype;
    }

    public void setIdentitype(int identitype) {
        this.identitype = identitype;
    }

    public int getTerminaltype() {
        return terminaltype;
    }

    public void setTerminaltype(int terminaltype) {
        this.terminaltype = terminaltype;
    }

    public String getTerminalid() {
        return terminalid;
    }

    public void setTerminalid(String terminalid) {
        this.terminalid = terminalid;
    }

    public String getErrorcode() {
        return errorcode;
    }

    public void setErrorcode(String errorcode) {
        this.errorcode = errorcode;
    }

    public String getErrormsg() {
        return errormsg;
    }

    public void setErrormsg(String errormsg) {
        this.errormsg = errormsg;
    }

    public String getBindid() {
        return bindid;
    }

    public void setBindid(String bindid) {
        this.bindid = bindid;
    }

    public String getSmsconfirm() {
        return smsconfirm;
    }

    public void setSmsconfirm(String smsconfirm) {
        this.smsconfirm = smsconfirm;
    }

    public String getSign() {
        return sign;
    }

    public void setSign(String sign) {
        this.sign = sign;
    }

    public String getSendtime() {
        return sendtime;
    }

    public void setSendtime(String sendtime) {
        this.sendtime = sendtime;
    }

    public String getYborderid() {
        return yborderid;
    }

    public void setYborderid(String yborderid) {
        this.yborderid = yborderid;
    }

    public String getBankcardtype() {
        return bankcardtype;
    }

    public void setBankcardtype(String bankcardtype) {
        this.bankcardtype = bankcardtype;
    }

    public String getBankname() {
        return bankname;
    }

    public void setBankname(String bankname) {
        this.bankname = bankname;
    }

    public String getCardlast() {
        return cardlast;
    }

    public void setCardlast(String cardlast) {
        this.cardlast = cardlast;
    }

    public String getData() {
        return data;
    }

    public void setData(String data) {
        this.data = data;
    }

    public String getEncryptkey() {
        return encryptkey;
    }

    public void setEncryptkey(String encryptkey) {
        this.encryptkey = encryptkey;
    }

    public String getBindvalidthru() {
        return bindvalidthru;
    }

    public void setBindvalidthru(String bindvalidthru) {
        this.bindvalidthru = bindvalidthru;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public boolean isFlag() {
        return flag;
    }

    public void setFlag(boolean flag) {
        this.flag = flag;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public List<BisBankBindCardInfo> getListInfo() {
        return listInfo;
    }

    public void setListInfo(List<BisBankBindCardInfo> listInfo) {
        this.listInfo = listInfo;
    }

    public String getIsQueryCVN() {
        return isQueryCVN;
    }

    public void setIsQueryCVN(String isQueryCVN) {
        this.isQueryCVN = isQueryCVN;
    }

}
